package com.klikmee.sms.cef.bulk;

import java.util.Hashtable;

/**
 * This interface defines requirements for external bulk sender.
 * @author makcro
 *
 */
public interface BulkSender<T>{
	/**
	 * Enumeration for bulk message parameters
	 */
	public enum BulkParams {
		TEXT, SENDER, RECEIVERS, CORE_CHARGING_ID, CORE_SERVICE_ID, SEQ_ID, CORE_BULK_MESSAGE_ID, USERNAME, REQUEST_DELIVERY_REPORT;
	}
	
	/**
	 * Sends bulk message with the specified params
	 * @param params
	 * @return HTTP response
	 * @throws SendBulkException 
	 */
	public T send(Hashtable<BulkParams, Object> params) throws SendBulkException;
}

